Telegram Group & Telegram Channel
السلام عليكم
اعتذر على عدم إكمال بقية المواضيع بالأمس وذلك بسبب انقطاع الشبكة 😄
اليوم سنقوم بشرح الموضوع الثاني لنبدأ.
كيف تضيف خاصية جديدة او ميزة الى أداة من الأدوات
طبعاً الميزة او الخاصية الجديدة التي تريد ان تضيفها الى أداة تعتمد على تفكيرك فمثلاً
انا خطرت فكرة اني اعمل ميزة للازرار التي في الفورم ميزة انو عندما يكون مؤشر الماوس فوق الزر تتغير الايقونة وعندما يغادر مؤشر الماوس من الزر تعود الايقونة الى الايقونة السابقة
لنفرض ان معك في الفورم 4 او 5 او حتى 10 ازرار فإنك حتماً ستحتاج لكل زر دالتين دالة للحدث MouseHover ودالة للحدث mouseLeave
كود :
public Form5()
{
InitializeComponent();

}

private void button2_MouseHover(object sender, EventArgs e)
{
button2.Image = Image.FromFile(@"C:\Users\HASSAN_2\Desktop\Icon\eee.png");
}

private void button2_MouseLeave(object sender, EventArgs e)
{
button2.Image = Image.FromFile(@"C:\Users\HASSAN_2\Desktop\Icon\bb.png");
}

هل لاحظت المثال السابق سوف تقوم بتكرار نفس العملية لجميع الازرار
طريقة مملة صحيح اذاً لنبدأ بالطريقة الاحترافية
الأمثلة السابقة فقط لتوضيح الفكرة
كيف تعمل الطريقة الاحترافية
الفكرة هي انك تقوم بعمل كلاس وتقوم بالوراثة من الكلاس Button
ثم تقوم بتعريف متغيرين من نوع Image ولكل متغير خاصية get و set
ثم تقوم بإستنساخ الدوال الوهمية التالية
OnMouseHover
OnMouseLeave
ملاحظة لمن لايعرف ماذا يعني دالة ناسخة override او وهمية virtual يراجع معلوماته في الأساسيات (البرمجة الشيئية)
الكود كامل :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Drawing;
namespace Resize_Form
{
class CustomButton:Button
{
Image normalImage;
Image hoverImage;

public Image NormalImage
{
get
{
return normalImage;
}

set
{
normalImage = value;
Image = normalImage;
}
}

public Image HoverImage
{
get
{
return hoverImage;
}

set
{
hoverImage = value;
}
}
protected override void OnMouseHover(EventArgs e)
{
Image = hoverImage;
base.OnMouseHover(e);
}

protected override void OnMouseLeave(EventArgs e)
{
Image = normalImage;
base.OnMouseLeave(e);
}
}
}



tg-me.com/CsharpWindowsForm/374
Create:
Last Update:

السلام عليكم
اعتذر على عدم إكمال بقية المواضيع بالأمس وذلك بسبب انقطاع الشبكة 😄
اليوم سنقوم بشرح الموضوع الثاني لنبدأ.
كيف تضيف خاصية جديدة او ميزة الى أداة من الأدوات
طبعاً الميزة او الخاصية الجديدة التي تريد ان تضيفها الى أداة تعتمد على تفكيرك فمثلاً
انا خطرت فكرة اني اعمل ميزة للازرار التي في الفورم ميزة انو عندما يكون مؤشر الماوس فوق الزر تتغير الايقونة وعندما يغادر مؤشر الماوس من الزر تعود الايقونة الى الايقونة السابقة
لنفرض ان معك في الفورم 4 او 5 او حتى 10 ازرار فإنك حتماً ستحتاج لكل زر دالتين دالة للحدث MouseHover ودالة للحدث mouseLeave
كود :
public Form5()
{
InitializeComponent();

}

private void button2_MouseHover(object sender, EventArgs e)
{
button2.Image = Image.FromFile(@"C:\Users\HASSAN_2\Desktop\Icon\eee.png");
}

private void button2_MouseLeave(object sender, EventArgs e)
{
button2.Image = Image.FromFile(@"C:\Users\HASSAN_2\Desktop\Icon\bb.png");
}

هل لاحظت المثال السابق سوف تقوم بتكرار نفس العملية لجميع الازرار
طريقة مملة صحيح اذاً لنبدأ بالطريقة الاحترافية
الأمثلة السابقة فقط لتوضيح الفكرة
كيف تعمل الطريقة الاحترافية
الفكرة هي انك تقوم بعمل كلاس وتقوم بالوراثة من الكلاس Button
ثم تقوم بتعريف متغيرين من نوع Image ولكل متغير خاصية get و set
ثم تقوم بإستنساخ الدوال الوهمية التالية
OnMouseHover
OnMouseLeave
ملاحظة لمن لايعرف ماذا يعني دالة ناسخة override او وهمية virtual يراجع معلوماته في الأساسيات (البرمجة الشيئية)
الكود كامل :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Drawing;
namespace Resize_Form
{
class CustomButton:Button
{
Image normalImage;
Image hoverImage;

public Image NormalImage
{
get
{
return normalImage;
}

set
{
normalImage = value;
Image = normalImage;
}
}

public Image HoverImage
{
get
{
return hoverImage;
}

set
{
hoverImage = value;
}
}
protected override void OnMouseHover(EventArgs e)
{
Image = hoverImage;
base.OnMouseHover(e);
}

protected override void OnMouseLeave(EventArgs e)
{
Image = normalImage;
base.OnMouseLeave(e);
}
}
}

BY برمجة تطبيقات الويندوز C# Programming


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/CsharpWindowsForm/374

View MORE
Open in Telegram


برمجة تطبيقات الويندوز C Programming Telegram | DID YOU KNOW?

Date: |

If riding a bucking bronco is your idea of fun, you’re going to love what the stock market has in store. Consider this past week’s ride a preview.The week’s action didn’t look like much, if you didn’t know better. The Dow Jones Industrial Average rose 213.12 points or 0.6%, while the S&P 500 advanced 0.5%, and the Nasdaq Composite ended little changed.

China’s stock markets are some of the largest in the world, with total market capitalization reaching RMB 79 trillion (US$12.2 trillion) in 2020. China’s stock markets are seen as a crucial tool for driving economic growth, in particular for financing the country’s rapidly growing high-tech sectors.Although traditionally closed off to overseas investors, China’s financial markets have gradually been loosening restrictions over the past couple of decades. At the same time, reforms have sought to make it easier for Chinese companies to list on onshore stock exchanges, and new programs have been launched in attempts to lure some of China’s most coveted overseas-listed companies back to the country.

برمجة تطبيقات الويندوز C Programming from ca


Telegram برمجة تطبيقات الويندوز C# Programming
FROM USA